//
//  MusicPlayerManager.h
//  product_B
//
//  Created by zyc on 16/5/31.
//  Copyright © 2016年 lanou. All rights reserved.
//

#import <Foundation/Foundation.h>
#import <AVFoundation/AVFoundation.h>
#import "musicPlayerModel.h"
#import "MusicAuthorModel.h"
#import "MusicModel.h"
@interface MusicPlayerManager : NSObject
#pragma mark --- 单例 ---
// 单例是为了保证 该类只有一个对象 这个类中只会有一个播放器的存在
+ (MusicPlayerManager *)shareInstance;

// 播放器属性
@property (nonatomic, strong)AVPlayer *player;
// 用来接收第一界面跳转的时候 传过来的数组
// 该数组会有 N多个Model 每个model都有音频URL
@property (nonatomic, strong)NSMutableArray *musicArray;

// 保存页面完整信息
@property (nonatomic, strong)MusicModel *model;
// 保存记录的标题作者信息
@property (nonatomic, strong)MusicPlayerModel *musicModel;
// 记录当前界面的url
@property (nonatomic, strong)NSString *url;
@property (nonatomic, strong)MusicAuthorModel *author;
// 记录当前播放的图片url
@property (nonatomic, strong)NSString *picUrl;

// index是用来接收 第一个点击的cell对应的model
// 第一个界面跳转的时候 会赋值一个indexPath.row
@property (nonatomic, assign)NSInteger index;

// 记录当前音乐 是播放状态 还是 暂停状态
@property (nonatomic, assign)BOOL isPlay;

@property (nonatomic,strong)NSString *playUrl;
#pragma mark --- 控制音量的方法 ---
- (void)playVolumeWithFloat:(CGFloat)volumeFloat;

#pragma mark --- 控制进度的方法 ---
- (void)playProgressWithFloat:(CGFloat)progressFloat;

#pragma mark --- 播放歌曲的方法 ---
- (void)replaceItemWithUrlString:(NSString *)urlString;

#pragma mark --- 自动播放下一首的的方法 ---
- (void)autoPlayNext;

#pragma mark --- 播放或者暂停的方法 ---
- (void)playerPlayAndPause;

#pragma mark --- 上一首的方法 ---
- (void)playAbove;

#pragma mark --- 下一首的方法 ---
- (void)playNext;

@end
